package com.itcam.thread_;

/**
 * Author:Cammy.Wu
 * Date:2024-05-10
 * Description:
 */

public class ThreadMethodDemo01 {
    /**
     * 开启线程第一种方式：继承Thread类
     * 1.编写一个类继承Thread
     * 2.重写run方法
     * 3.将线程任务代码写在run方法中
     * 4.创建线程对象
     * 5.调用start方法开启线程
     * 细节：调用start方法开启线程，会自动调用run方法执行
     * <p>
     * Thread类的方法：
     * public String getName():获取线程名字
     * public void setName():设置线程名字
     * public static Thread currentThread():获取当前线程的对象
     */

    public static void main(String[] args) {
        // 4.创建线程对象
        MyThread1 myThread11 = new MyThread1("A:");
        MyThread1 myThread12 = new MyThread1("B:");

//        myThread11.setName("Cammy:");
//        myThread12.setName("Lee:");

        // 5.调用start方法开启线程
        myThread11.start();
        myThread12.start();
    }
}

// 1.编写一个类继承Thread
class MyThread1 extends Thread {

    public MyThread1() {
    }

    public MyThread1(String name) {
        super(name);
    }

    // 2.重写run方法
    @Override
    public void run() {
        // 3.将线程任务代码写在run方法中
        for (int i = 0; i <= 200; i++) {
            System.out.println(super.getName() + " 线程任务执行了 " + i);
        }
    }
}
